#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""
    @Author 黄海峰
    @Date 2021/4/13 23:14
    @Version 1.0.0
"""
# 对 1-100 求和
sum = 0
for i in range(101):
    sum = sum + i
    print('循环里：', i)
print('结果：', sum)

userList = ['张三', '李四', '王五']
for user in userList:
    print('循环所得：', user)

print(userList)

# 查询集合长度
print(len(userList))

# 获取数组元素
print(userList[0])
print(userList[1])
print(userList[2])

# print(userList[3])

print(userList[-1])
print(userList[-2])
print(userList[-3])

print(userList[-0])

# 操作元素
userList.append('张飞')
print(userList)

userList.insert(2, '刘备')
print(userList)

userList.pop(4)
print(userList)

patientList = [
    ['1', '2'],
    ['22', '24'],
    ['7', '8', '9']
]

print(len(patientList))
print(patientList[2])
print(patientList[2][2])

# 不变数据定义（）
tupleList = ('1', '2', '4')
print(len(tupleList))

# 定义Map dict
userMap = {'age': 18, 'name': '黄海峰'}
print(userMap['age'])
print(userMap['name'])
userMap['age'] = 22
print(userMap['age'])
userMap2 = {'age': 18, 'name': '黄海峰', 'name': 'dean'}
print(userMap2)


# 定义set
userSet = {'1', '2', '2'}
print(userSet)
userSet2 = set({'1', '2', '2'})
print(userSet2)
userSet2 = set(['1', '2', '2'])
print(userSet2)

# set和dict的唯一区别仅在于没有存储对应的value (这也是解释以上IDEA提示的原因)

# 对于不变对象来说，调用对象自身的任意方法，也不会改变该对象自身的内容。相反，这些方法会创建新的对象并返回，这样，就保证了不可变对象本身永远是不可变的。
print('set------->')
s1 = set([1, 1, 2, 2, 3, 3])
print(s1)
s2 = set([2, 3, 4])
print(s1 & s2)
print(s1 | s2)